﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.Drawing.Printing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Collections;
using System.IO;

namespace GIFT
{
    public class ControlBinario
    {
        //Constructor de la clase
        public ControlBinario()
        {
            consultaBinario = new ConsultaBinario();//hacer consulta
        }

        //Retornar el atributo del binario con el nombre que recibe como parametro
        public String obtenerAtributo(String nombre, String atributo)
        {
            //Manda a buscar en la base de datos el correlativo
            return consultaBinario.buscarAtributo(nombre, atributo);
        }

        //Recibe un nombre y retorna true si este ya existe en la base de datos
        public bool existe(String nombre)
        {
            if (consultaBinario.existe(nombre))//Si ya existe
            {
                return true;
            }
            return false;
        }

        //Retorna un arreglo con los nombres de los binario que contengan la hilera que reciba como parametro en el nombre o la descripcion
        public ArrayList buscarContenido(String aBuscar)
        {
            ArrayList nombres = consultaBinario.buscarConcordancias(aBuscar);//Agrega al arreglo los nombres 
            return nombres;
        }

        //retorna una lista con todos los nombres de los binarios que existen
        public ArrayList obtenerBinarios()
        {
            ArrayList nombres = consultaBinario.obtieneBinarios(); //Obtiene los binarios y los retorna
            return nombres;
        }

        //Manda a borrar un binario
        public void borrar(String nombre)
        {
            consultaBinario.borrar(nombre);
        }

        //Manda a crear un nuevo binario
        public void crearNuevo(String nombre, String descripcion, String nomOp1, String valOp1, String nomOp2, String valOp2, String defecto)
        {
            //PRIMERO SE DEBEN DE REVISAR SI LOS FORMATOS DE LOS CAMPOS SON LOS CORRECTOS
            if (nombre == "")
            {
                return;
            }
            if (descripcion == "") descripcion = "NULL";
            if (nomOp1 == "") nomOp1 = "NULL";
            if (valOp1 == "") valOp1 = "NULL";
            if (nomOp2 == "") nomOp2 = "NULL";
            if (valOp2 == "") valOp2 = "NULL";
            if (defecto == "") defecto = "NULL";
            consultaBinario.crear(nombre, descripcion, nomOp1, valOp1, nomOp2, valOp2, defecto); //Lo manda a agregar a la BD
        }

        //Manda a modificar un binario
        public void modificar(String nombre, String descripcion, String nomOp1, String valOp1, String nomOp2, String valOp2, String defecto)
        {
            //PRIMERO SE DEBEN DE REVISAR SI LOS FORMATOS DE LOS CAMPOS SON LOS CORRECTOS


            consultaBinario.modificar(nombre, descripcion, nomOp1, valOp1, nomOp2, valOp2, defecto); //Lo manda a agregar a la BD
        }


        //Variables globales

        //Clase que realiza las consultas a la base de datos
        private ConsultaBinario consultaBinario;
    }
}
